// home模块的小仓库
import { reqCategoryList, reqGetBannerList, reqFloorList } from '@/api'

const state = {
  // state中数据默认初始值别瞎写, 服务器返回对象就写对象，服务器返回数组就写数组。【根据接口返回值初始化】
  categoryList: [],
  // 轮播图的数据
  bannerList: [],
  // floor组件的数据
  floorList: [],
}
const mutations = {
  CATEGORYLIST (state, categoryList) {
    state.categoryList = categoryList
  },
  // 轮播图数据
  GETBANNERLIST (state, bannerList) {
    state.bannerList = bannerList
  },
  // floor数据
  GETFLOORLIST (state, floorList) {
    state.floorList = floorList
  }
}
// 修改mutations
const actions = {
  async categoryList ({ commit }) {
    // 通过api里面的接口函数调用，向服务器发送请求，获取服务器的数据
    const result = await reqCategoryList()
    if (result.code === 200) {
      commit('CATEGORYLIST', result.data)
    }
  },
  // 获取首页轮播图的数据
  async getBannerList ({ commit }) {
    let result = await reqGetBannerList()
    if (result.code === 200) {
      commit('GETBANNERLIST', result.data)
    }
  },
  //获取floor数据
  async getFloorList ({ commit }) {
    let result = await reqFloorList();
    if (result.code === 200) {
      // 提交mutation
      commit('GETFLOORLIST', result.data)
    }
  }
}
const getters = {}
export default {
  state,
  mutations,
  actions,
  getters
}